1 Getting started / Hot Keyboard Macro Utility Documentation

1 Getting started

This chapter describes basic functions so you can start using Private Shell.


1.1 Connect Using Password Authentification / Private Shell Documentation

1.1 Connect Using Password Authentification

Password authentification is the basic SSH authentification. To connect to a server using password do the following:

  1. Run Private Shell
  2. In the Server Parameters dialog window enter Server name and User name. Leave Port number with default value. Authentification method should be set to Password

  3. Click OK
  4. Enter your password in the password prompt window

If you experience problems connecting this way, consult your system administrator to check advanced settings.

Drop us a message if you find this topic difficult for understanding or have other comments.


1.2 Connect Using Public Key Authentification / Private Shell Documentation

1.2 Connect Using Public Key Authentification

This method requires some advanced setting being made prior to connecting.

  1. Create private/public keys pair
  2. Upload public key to the server
  3. Connect to the server using public key authentification method

Note:
Described settings may not work depending on a server configuration. If you experience problems performing the steps below contact your system administrator, or visit our support page at http://www.privateshell.com

Create private/public keys pair

  1. Run Private Shell
  2. In the Server parameters box click Advanced

  3. Choose User keys settings
  4. Click Generate new key...

    5. User keys settings

  5. Enter Key name ("dsa-key")

    6. Generate new key

  6. Click Generate button
  7. In the Save private keys with password box enter a password for the key. It is used to encrypt your private key, so no one having an access to the key file can use it. This password is not associated with the password that is used for password authentification.

    Key password prompt

  8. It is recommended to create RSA key too. Repeat from 4th step setting another Key name ("rsa-key") and Key type as RSA
  9. Once you create the keys you get a picture similar to the one below

    10. User keys settings with keys

Upload public key to the server

  1. Connect to your server using password authentification
  2. On the File menu click Settings...
  3. Choose User keys settings
  4. Select "dsa-key" and click Put public key on server
  5. Select "rsa-key" and click Put public key on server
  6. Click OK
  7. On the File menu click Disconnect

Connect to the server using public key authentification method

  1. On the File menu click Connect...
  2. Set Authentification method to Public key
  3. Click OK


1.3 Using Secure FTP / Private Shell Documentation

1.3 Using Secure FTP

Starting Secure FTP Client

    Private Shell includes secure FTP client for easy and secure file upload and download. You can start FTP client from the main menu by choosing "File", "New Secure FTP Window" or by clicking on the "Secure FTP" toolbar button.

    Secure FTP requires connection to the server, so if you are not already connected, the standard login dialog is displayed. Then you will see the Secure FTP window:

    Secure FTP Window

    It looks like the standard Windows Explorer window (i.e. there is the folder tree on the left and the file list on the right) but it shows remote files placed on the server which you are connected to. File list (on the right) shows files contained in the remote folder selected in the folder tree (on the left) only, so you have to choose desirable folder first.

View Styles

    You can choose one of the four standard view styles for the file list - it can be done through the menu "View", "View File Pane as". Standard styles include Small Icons View, Large Icons View, List View and Detail View.

File Download

    To download a file or a group of files from the server you have to select them in the file list first. Then click the menu item "Secure FTP", "Download" or press the "Ctrl-Down" keys. You'll be prompted to choose destination location on your local drive. Then the download progress dialog will appear.

    Another way to download a file (or files) from the server is to drag it to the desired location on your computer from the file list or use standard "Copy"/"Paste" commands.

    You can break downloading any time you want by pressing the "Cancel" button.

    Also, you shouldn't worry about breaking the download because of disconnecting from the network, hardware failure etc. since Private Shell can resume broken downloads:

    You can, of course, tell Private Shell to overwrite or skip such file (or files).

File Upload

    To upload a file (or files) to the server, firstly select destination remote folder in the folder tree, then click the menu item "Secure FTP", "Upload" (or press "Ctrl-Up") and choose the files you want to upload from your local drives. The uploading progress dialog will appear.

    Another way to upload a file is dragging it from your explorer to the SFTP window or using the standard "Copy"/"Paste" commands.

    Also, you can cancel the uploading by pressing the "Cancel" button.

    Note: you can get an error message if you do not have enough access rights for the upload operation in the selected remote folder.

Delete File

    To delete files from the server just select them in the file list and click the "Delete" menu item. Use this option with care because you can unrecoverable delete some important information from the server. To protect you from choosing this option accidentally you should confirm this operation by clicking "Yes" in the confirmation dialog.

Exit Secure FTP

    To exit Secure FTP Client, click the menu item "File", "Close This Window", press "Alt-F4" or close the FTP Client window with your mouse.


2 Installation / Private Shell Documentation

2 Installation

This chapter describes different install options that may be helpful for system administrators to perform bulk installations of Private Shell.


2.1 Installation Options / Private Shell Documentation

2.1 Installation Options

/SP-

Disables the "This will install... Do you wish to continue?" prompt at the beginning of Setup.

/SILENT, /VERYSILENT

Instructs Setup to be silent or very silent. When Setup is silent the wizard and the background window are not displayed but the installation progress window is. When a setup is very silent the installation progress window is not displayed too. Everything else is normal so for example error messages during installation are displayed and the startup prompt is (if you haven't disabled it with the /SP- command line option explained above)

If a restart is necessary and the /NORESTART command isn't used (see below) and Setup is silent, it will display a "Reboot now?" message box. If it's very silent it will reboot without asking.

/NORESTART

Instructs Setup not to reboot even if it's necessary.

/LOADINF="filename"

Instructs Setup to load the settings from the specified file after having checked the command line. This file can be prepared using the /SAVEINF= command as explained below.

Don't forget to use quotes if the filename contains spaces.

/SAVEINF="filename"

Instructs Setup to save installation settings to the specified file.

Don't forget to use quotes if the filename contains spaces.

/DIR="x:\dirname"

Overrides the default directory name displayed on the "Select Destination Directory" wizard page. A fully qualified pathname must be specified.

/GROUP="folder name"

Overrides the default folder name displayed on the "Select Start Menu Folder" wizard page.

/NOICONS

Instructs Setup to initially disable the "Don't create any icons" check box on the "Select Start Menu Folder" wizard page.

/COMPONENTS="comma separated list of component names"

Overrides the default components settings. Using this command line parameter causes Setup to automatically select a custom type.


3 Features description / Private Shell Documentation

3 Features description

This chapter contains topics regarding Private Shell feature set. Topics are based on per-dialog description.


3.1 Log-in Settings / Private Shell Documentation

3.1 Log-in Settings

Log in - Server parameters window

Profile

    Select profile to connect with. For the first time there is Default profile only. To create new profile click Save profile... button.

Server name

    Server address, you can specify either host name or host IP address.

    Example:
    myserver.com
    192.168.0.1

Port number

    Server's port number that accepts SSH connections.

User name

    User name to log in.

Authentification method

    Preferred authentification method. Also you can enable/disable methods and set execution priorities in advanced settings.

    See also:
    See also:

    Password Authentification, Public Key Authentification

Save profile...

    Save current settings as a new profile

Advanced...

    Edit profile settings


4 Advanced Features / Private Shell Documentation

4 Advanced Features

This chapter describes advanced profile specific settings. You can access these settings by clicking Advanced... button in Log in dialog window, clicking Setting button on the toolbar, or by clicking Edit Profiles on the Profiles menu.

Note:
Settings are saved on per-profile basis. New profiles base on Default profile settings

Important Note:
Please edit advanced settings carefully, we do not recommend non-experienced to change the default values.


4.1 Server / Private Shell Documentation

4.1 Server

Advanced: Server Settings

Server name

    Server address, you can specify either host name or host IP address.

    Example:
    myserver.com
    192.168.0.1

Port number

    Server's port number that accepts SSH connections.

User name

    User name to log in.

Connection timeout

    Timeout during connection before disconnect (in seconds). Set higher value for poor connections.

Authentification methods

    Available methods for authentification. Use check boxes to enable/disable methods. Use arrows to sort method priorities, upper method has the top priority

Authentification timeout

    Timeout during authentification before disconnect (in seconds). Set higher value for poor connections.

Log session

    Enables session logging. Enter log file name to the "Log to file" field.

Do not enter interactive session, use only tunneling

    Select the box to avoid terminal session when tunneling is being used

    Note:

    • SSH2 only
    • To enter interactive session click Connect on the File menu

    See also:
    Tunneling

Minimize to tray when connected

    Minimize Private Shell window to the taskbar notification area (system tray) when connection established.

    Note:
    Useful along with tunneling feature.


4.2 SSH Protocol / Private Shell Documentation

4.2 SSH Protocol

Advanced: Server Settings

SSH protocol versions

    Select SSH protocol version to support.

    Note:
    SSH2 is a preferred one

Host key algorithm support

    Choose host key algorithm to support.

    Note:
    SSH2 only

Data compression settings

    Enable/disable data compression

    Note:
    Data compression is not recommended for terminal sessions as each sent/received character will be compressed causing connection speed slow down.

    Important Note:
    SSH server must support data compression

Default settings

    Restores original settings.


4.3 Cryptography / Private Shell Documentation

4.3 Cryptography

Ciphers

    Ciphers can be selected separately for each direction. Use arrows to sort ciphers in order to set priority levels (top cipher has the highest priority). Clear/set check boxes to disable/enable a cipher.

    Note:
    SSH2 only. SSH1 uses 3DES

    Important Note:
    Use None cipher with care, generally you should not ever use it.

MACs

    MACs can be selected separately for each direction. Use arrows to sort MACs in order to set priority levels (top MAC has the highest priority). Clear/set check boxes to disable/enable a particular MAC.

    Note:
    SSH2 only.

    Important Note:
    Use None MAC with care, generally you should not ever use it.

Default settings

    Restores original settings.


4.4 Terminal / Private Shell Documentation

4.4 Terminal

Font

    Font name and size to display characters in the Private Shell terminal.

Window and Buffer Size

    Terminal window layout size and screen buffer size. Buffer size means number of text lines available by scrolling window up and down.

    Note:

  • Sizes are counted in characters.
  • Screen buffer size is not related to the session log file as a whole session is logged.

Colors

    Colors to display plain text, text under cursor, selected text, and errors.

Emulate terminal

    Choose a terminal to emulate.

Remote server uses code page

    Select code page that is used by the server in order to display local characters correctly.

    Note:
    Use Other... item to select code page from the list of all code pages available. Because of large amount of choices you may need to consult your system administrator for a correct one.


4.5 Keyboard Mapping / Private Shell Documentation

4.5 Keyboard Mapping

Keyboard mapping is a new useful feature available in Private Shell 1.4. Using it you can define character sequence that is sent to the server when you press a specific key.

This has two primary uses - you can customize Private Shell to work with non-standard terminal servers or use this feature as a macro to save time by assigning often typed pharses to hotkeys.

Keyboard mapping settings

Use default keyboard mapping for current terminal type

    Tells Private Shell to use default keyboard mapping for currently selected terminal type. (Hint: current terminal type is selected in the Terminal page).

Use default keyboard mapping for terminal

    Tells Private Shell to use standard keyboard mapping for a specific terminal. In this case you can select teminal type from the list of available types located to the right of this option.

Custom keyboard mapping

    This option lets you set up your own keyboard mapping. In most cases it is enough only to edit existing items if you want to customize Private Shell to work with a non-standard terminal server. This is done by selecting item in the list and clicking the "Edit" button. You'll see "Edit Key Action" dialog.

    However, if you want to assign often typed phrase to a hot-key you should click the "Add" button. You shouldn't delete or edit existing key mappings in such a case because it can lead to partial or full Private Shell inoperability.

    You can use the "Remove" button to delete selected key mapping from the list.

Edit Key Action Dialog

Edit Key Action Dialog

Predefined key / Custom Key

    Usually you check the "Custom key" option and enter desired hotkey in the corresponding field. But you cannot enter such keys like "Enter", "Space", "Escape" etc. in this way. If you need to map one of these keys (or a key combination with these keys), you should check the "Predefined key" option and select the key you need from the drop-down list.

Character sequence produced by the key

    Enter the character sequence here. Use the following rules to enter non-printable characters:
    • Escape code (0x1B) is entered as "\E".
    • CR, LF and Tab (0x0D, 0x0A and 0x09) are entered as "\r", "\n" and "\t" correspondingly.
    • Symbols "\", "%" and "^" are entered as "\\", "\%" and "\^" respectively.
    • You can enter any other symbol if you know its hex code as "%xx" where "xx" is its hex code.
    • You can enter symbol with hex code from 0x01 to 0x1A as "^A" .. "^Z".

Convert sequence to terminal code page

    Check this box if you want the sequence to be translated in compliance with the selected terminal code page. Usually it is not needed (unless you do use natinal symbols in the sequence).


4.6 Printing Support / Private Shell Documentation

4.6 Printing Support

Secure FTP Settings

Font

    Lets you choose font for printing. You may use the same font as selected for the terminal ("Use terminal font" option, look the Terminal page to see how to change terminal's font) or select a different one ("Use custom font" option). In the latter case typeface and size of the font can be selected here.

Area to print

    Defines area to be printed with the "Print" command. Available options are:
    • Visible area - print only what can be currently seen in the window.
    • Entire buffer - print entire buffer. Size of the buffer is set in the Terminal page.
    • Current selection - print what is currently selected. If this option have been selected and selection is empty when Print command is executed, all visible area is printed.

Printing properties

    Print in color - print text as color (if selected) or as black and white (if not).

    Print header on each page - print page header on each page or only on the first page.

    Line wrap - wrap lines or print as they are.


4.7 Secure FTP / Private Shell Documentation

4.7 Secure FTP

Secure FTP Settings

Show Columns

    Available columns to show in the Secure FTP client. Use check boxes to show/hide corresponding column. To change column order use the two buttons with arrows located on the right of the list.

    Note: All of the selected columns are shown when the file list is in the Detail View mode only.

Code page for file names

    Defines codepage used to specify file names. You can set this parameters to correspond with the similar terminal setting ("Same as for terminal") or choose another codepage from the available on your system.

    See also:
    Terminal

Text files

    Here you can select the new line convention which is used on the remote server and specify file extensions whose content is treated as text. Use semicolon to delimit several file extensions.

Default Secure FTP Settings

    Default view mode - defines the file list view mode which is set firstly when you start new Secure FTP client.

    Default overwrite policy - tells the Secure FTP client what to do if the requested file already exits on the local (for download operations) or the remote (for upload operations) system.

    By defaul treat file as ... - tells the Secure FTP client to treat all files as binary, text or distinguish them by their extensions.

    Default permissions - sets the default file and directory permissions which is assigned after uploading them to the remote system. The octal numbers should be used here.


4.8 User Keys / Private Shell Documentation

4.8 User Keys

User Keys Settings

User keys

    List of user keys. Use check boxes to enable/disable keys for the current account.

    Note:

    • Some servers limit number of authentification attempts with different keys, so it would be useful to leave minimum keys enabled.
    • Physically keys are located in the Documents And Settings\login\Application Data\Private Shell\User Keys folder (Windows 2000/XP computers).

Generate new key...

    Generates new key, once you click the button you get the following dialog window:

    Generate New Key

    • Key name - name of the key to appear in the list
    • Key type - type of the key (either DSA or RSA)
    • Key bits - length of the key in bits

    Once the key is generated you will be asked for a password to encrypt the key. You may leave it empty but then anyone having access to the key get an ability to log in under your name. This password differs from the password that is used for password authentification.

    Note:

    • DSA/DSS keys are not supported by SSH1
    • Some old SSH2 servers do not accept RSA keys
    • Key generation (especially DSA/DSS) may take up to 5-10 minutes depending on the key length and your computer speed.

    Change password...

      Changes key password.

    Delete key

      Deletes the selected key.

    Put public key on server

      Uploads public part of the selected key to the server. You must first connect to the server using password authentification or authentification with the different key.

      Note:

      • SSH2 only
      • Server software must support this function

    Import key

      Imports keys generated using various software such as Open SSH, ssh.com, PuTTY, and other. Private Shell automatically detects key format.

      Note:
      PuTTY may generate 1023 bit keys, Private Shell imports and uses such keys successfully.

    Export key

      Exports the selected key to an external file. You can choose whether to export public key or private key, and desired file format.

    Put into key agent

      Puts the selected key into key agent.

      Note:
      Private Shell key agent software must be running.

    Key fingerprint...

      Displays key fingerprint in hexadecimal and textual forms.

    Allow interaction with key agent

      Set this option to allow Private Shell Agent exchange keys with Private Shell.

      Note:
      Private Shell Agent software included with Private Shell distribution.


4.9 Host Keys / Private Shell Documentation

4.9 Host Keys

Host keys

    List of host public keys. Keys are added automatically when you establish connections with the different servers.

Export key...

    Exports the selected host public key to an external file. Several file formats such as Private Shell, Open SSH, ssh.com, PuTTY, SSH version 1 are available.

Delete key

    Deletes the selected key.

Key fingerprint...

    Displays key fingerprint in hexadecimal and textual forms.


4.10 Tunneling / Private Shell Documentation

4.10 Tunneling

Defined tunnels

    List of defined tunnels. These tunnels are active when Private Shell is connected to the server.

New incoming tunnel...

    Once you click this button to create a tunnel you get the following dialog window:

    • Server listens at port - server listens at this port and forwards TCP packets to Private Shell through established SSH connection
    • Host, port - Private Shell forwards received packets to this host and port

    Note:
    For SSH1 connection you have to re-connect to the server to apply changes.

    Important Note:
    In incoming tunnel settings localhost alias refers to the IP address of the computer where Private Shell resides.

New outgoing tunnel...

    Once you click this button to create a tunnel you get the following dialog window:

    • Client listens on port - Private Shell listens at this port and forwards TCP packets to the server through established SSH connection
    • Permit connections from local host only - set this option to forbid attempts to connect to the specified port from other computers.
    • Host, port - server forwards received packets to this host and port

    Note:
    For SSH1 connection you have to re-connect to the server to apply changes

    Important Note:
    In outgoing tunnel settings localhost alias refers to the IP address where the SSH server resides.

Edit tunnel...

    Edit the selected tunnel preferences.

    Note:
    For SSH1 connection you have to re-connect to the server to apply changes.

Remove tunnel

    Removes the selected tunnel.

    Note:
    For SSH1 connection you have to re-connect to the server to apply changes.


5 How To / Private Shell Documentation

5 How To

This chapter consists of How To tutorials.


5.1 How To Use Private Shell with CVS / Private Shell Documentation

5.1 How To Use Private Shell with CVS

Before you can use Private Shell to tunnel CVS connection you have to be able to connect to the server via SSH. Read Password Authentification and Public Key Authentification (optional) topics first

Set environment variable:

cvs_rsh=ssh.exe

Note: You have to append c:\Program Files\Private Shell\ to the PATH environment variable.

To specify a particular profile to use with CVS connections, set

PRIVATESHELL_CLI_PROFILE = "profile name"

Important Note:
Default profile cannot be used for CVS connections.

How to add environment variables

  • Windows 2000 / XP
    open Start --> Settings --> Control Panel --> System
    choose Advanced --> Environment Variables
  • Windows NT
    Start->Settings->Control Panel->System->Environment
  • Windows 95 / 98
    edit c:\autoexec.bat file.


5.2 How To Connect MySQL Server with Private Shell / Private Shell Documentation

5.2 How To Connect MySQL Server with Private Shell

There are two main reasons to use Private Shell for tunneling MySQL connections:

  1. Security.
  2. Ability to interact with servers allowing local connections only.

The latter reason is a solution for database access from anywhere

To tunnel MySQL connection you have to be able to connect to the server via SSH first. Read Password Authentification and Public Key Authentification (optional) topics.

If you'd like to connect to MySQL server with MS Access or other applications supporting ODBC, you have to download and install MySQL ODBC driver for Windows.

Configuring Private Shell

  1. In the profile settings click Tunneling
  2. Click New outgoing tunnel and create tunnel with the following parameters:

    3. Outgoing tunnel for MySQL connection

  3. Connect to the server using this profile

Note:
You may clear "Permit connections from local host only" option to allow other computers on the network connecting to database server, while it can be a great solution for connecting remote workgroup it can be a security lack.

Configuring MySQL/ODBC driver

  1. Open "Start -> Settings -> Control Panel -> Administrative Tools -> Data Sources (ODBC)"
  2. Add new User DSN with "MySQL ODBC Driver" as a driver
  3. Set Host/Server name to "localhost"
  4. Make sure Private Shell is connected and click Test Data Source to verify the connection is OK

Important Note:
You must have Private Shell running and connected in order to use the tunneling feature. You may put Private Shell shortcut to the startup folder (e.g. "c:\Program Files\Private Shell\pshell.exe" --profile "Profile Name") and set "Minimize to tray" option in the profile's settings.


5.3 How To Connect E-Mail Server with Private Shell / Private Shell Documentation

5.3 How To Connect E-Mail Server with Private Shell

This topic describes how to establish a secure connection between your computer and mail server

Requirements

  • Mail server, we assume mail.server.com - just replace with your mail server address.
  • Server accepting SSH connections, we assume server.com

Note:
Generally speaking, mail server and ssh server may have the same address, that doesn't matter.

Configuring Private Shell

  1. Create profile to connect to server.com, see: connect using password authentification, or connect using public key authentification)
  2. In the profile settings click Tunneling
  3. Click New outgoing tunnel and create a tunnel with the following parameters for outgoing mail:

    4. Outgoing tunnels for SMTP connection

  4. Create additional outgoing tunnels for inbound mail (we create both POP3 and IMAP4):

    5. Outgoing tunnels for POP3/IMAP4 connections

    Note: You may not need all three tunnels listed above - use the following rule:
    1. Create a tunnel on the 25-th port if you're planning to send outgoing mail through Private Shell (it's for the SMTP server)
    2. Create a tunnel on the 110-th port if you're using the POP3 protocol (and want to connect to the POP3 server through Private Shell)
    3. Create a tunnel on the 143-th port if you're using the IMAP4 protocol (and want to connect to the IMAP4 server through Private Shell)
    The last two protocols (POP3 and IMAP4) are used to receive mail whereas the first (SMTP) is used to send mail.

  5. Connect to the server using this profile.

Note:
You may clear "Permit connections from local host only" option to allow other computers on the network connecting to e-mail server, while it can be a great solution for connecting remote workgroup it can be a security lack.

Configuring e-mail client (assuming MS Outlook)

  1. Run Outlook
  2. Click Accounts in the Tools menu
  3. Select an account to establish secure connection and click Properties button
  4. In the Servers tab set Incoming and Outgoing mail servers to localhost

    5. MS Outlook settings

  5. Click OK

Important Note:
You must have Private Shell running and connected in order to use the tunneling feature. You may put Private Shell shortcut to the startup folder (e.g. "c:\Program Files\Private Shell\pshell.exe" --profile "Profile Name") and set "Minimize to tray" option in the profile's settings.

Important Note:
Such tunnel protects messages while they are transferred between your computer and SSH server only. For full security all servers including recipient's must have secure connection established.


6 Information / Private Shell Documentation

6 Information

This part of the documentation contains information about Private Shell license agreement, contacts with developers and ordering options.


6.1 Contacts / Private Shell Documentation

6.1 Contacts

Use the following addresses to contact Private Shell Group:

WWW

http://www.privateshell.com

E-Mail

Technical support: support@privateshell.com

Sales: sales@privateshell.com

Other issues: support@privateshell.com


6.2 Ordering and Registration / Private Shell Documentation

6.2 Ordering and Registration

Advantages to register

  • No time limitation
  • Free technical support
  • Free or discounted upgrades

How to order

To order Private Shell license go to online order page.

There are many payment options available including credit cards (online/phone/fax), checks, bank transfers, and others. If you didn't find suitable payment option contact us and we will try to help.


Private Shell Documentation

Important Note:
Documentation is in development. Please send all your comments to our support team.

  • 1 Getting started
    • 1.1 Connect Using Password Authentification
    • 1.2 Connect Using Public Key Authentification
    • 1.3 Using Secure FTP
  • 2 Installation
    • 2.1 Installation Options
  • 3 Features description
    • 3.1 Log-in Settings
  • 4 Advanced Features
    • 4.1 Server
    • 4.2 SSH Protocol
    • 4.3 Cryptography
    • 4.4 Terminal
    • 4.5 Keyboard Mapping
    • 4.6 Printing Support
    • 4.7 Secure FTP
    • 4.8 User Keys
    • 4.9 Host Keys
    • 4.10 Tunneling
  • 5 How To
    • 5.1 How To Use Private Shell with CVS
    • 5.2 How To Connect MySQL Server with Private Shell
    • 5.3 How To Connect E-Mail Server with Private Shell
  • 6 Information
    • 6.1 Contacts
    • 6.2 Ordering and Registration